package gruppoSoluzione.mainService.services;

import gruppoSoluzione.mainService.HTTPService;
import gruppoSoluzione.mainService.ServiceDB;
import gruppoSoluzione.mainService.ServiceDBLog;
import gruppoSoluzione.mainService.ServiceDate;
import gruppoSoluzione.mainService.ServiceParams;
import gruppoSoluzione.mainService.data.ServiceDBXML;

import java.io.DataOutputStream;
import java.util.ArrayList;

/**
 * Servizio di Inserimento
 * 
 * @author Alessandro Martinelli
 */
public class InserisciService implements HTTPService{

	@Override
	public ArrayList<String> getServiceResult(ServiceParams params, DataOutputStream out) {
		
		//String parametri = "operatore=MARIO-BIANCHI-5321&size=20&luogo=Centrale&modello=Sneaker-Plus(40)&data=010414";
		
		String operatore = params.getValue("operatore");
		String size = params.getValue("size");
		String luogo = params.getValue("luogo");
		String modello = params.getValue("modello");
		String data = params.getValue("data");
		String azione ="Carico";
		if(!luogo.equals("Centrale")){
			azione = "Scarico";
		}
		
		//Load server
		ServiceDBXML loader=new ServiceDBXML();
		ServiceDB db=new ServiceDB();
		loader.loadDB(db);
		
		ServiceDate serviceDate=new ServiceDate(data);
		ServiceDBLog log=new ServiceDBLog(luogo,azione,operatore);
		db.addLog(serviceDate, log.generaLogSimile(Integer.parseInt(size), modello));
		
		//store data
		loader.saveDB(db);
		
		params.addParam("file","inserimentoRiuscito.html");
		return (new HttpFileServer()).getServiceResult(params, out);
	}
	
}
